// pages/index/index.js
// 提交流程 ==>
// 先提交对此人员的评价信息，再检查登录，如未登录执行新用户登录，最后更新用户提交次数
import { initStaffList, getAreaList, areaSingleList, IdWorkerObj, initDataStaff} from './staff'
// import { pinyin } from 'pinyin-pro';
const db = wx.cloud.database()
const _ = db.command
const $ = db.command.aggregate
const workerList =[{
  'name':'萨达', 'wid':'0002', 'group':'上门装维师傅', 'area':'新会'
  }, { 'name':'江门001', 'wid':'0005', 'group': '客服中心人员', 'area':'江门' },
  {'name':'萨达', 'wid':'0011', 'group':'上门装维师傅', 'area':'开平'}
]  // 等待填充
const tagObj = {
  '新会': 'xh',
  '江门': 'jm',
  '鹤山': 'hs',
  '开平': 'kp',0:'',1:'糟糕的服务体验',2:'糟糕的服务体验',3:'不太满意',4:'不太满意',5:'服务尚可',6:'服务尚可',7:'比较满意',8:'比较满意',9:'非常棒！',10:'五星好评！'
}
const area = initStaffList
let citys = area['江门']
let curPickIndex = '装维工程师'
Page({
    /**
     * 页面的初始数据
     */
    data: {
        // option1: [
        //     { text: '客服中心人员', value: 0 },
        //     { text: '上门装维师傅', value: 1 },
        //     { text: '营业厅工作人员', value: 2 },
        //   ],
        //   groupValue: 0,
        //   group2Staff:{
        //     customer_serve:['wqwq','aass'],
        //     door_master:['foo','woo'],
        //     hall_staff:['yyyyy','pppppppppp']
        //   },
        curArea: area['江门'] , // 初始化当前区域  
        columns: [
            {
              values: Object.keys(area['江门']), // 初始化当前区域  
              className: 'column1',              
            },
            {
              values: area['江门'] [ Object.keys(area['江门'])[0] ], // 初始化当前区域  
              className: 'column2',
              defaultIndex: 0,
            } ],
            curStaff: {}, //人员组别和人员编号
            rateValue:0, // 评分
            surveyData:{}, // 问卷数据
            user_phone:'',
            user_talk: '',
            jobtype_id:'',
            isSubmit: false,           
            isEnterByArea: false,
            digShow: false,           
            icon: { // 区域选择logo变换
              normal: 'https://imgg.cookcloud.club/%E6%96%B0%E4%BC%9ABK.png',
              active: 'https://imgg.cookcloud.club/%E6%96%B0%E4%BC%9AAC.png',
              jiangmenNormal: 'https://imgg.cookcloud.club/%E6%B1%9F%E9%97%A8bk.png',
              jiangmenActive:'https://imgg.cookcloud.club/%E6%B1%9F%E9%97%A8ac.png',
              heshanNom: 'https://imgg.cookcloud.club/%E9%B9%A4%E5%B1%B1bk.png',
              heshanAc: 'https://imgg.cookcloud.club/%E9%B9%A4%E5%B1%B1ac.png',
              kaipingNom: 'https://imgg.cookcloud.club/%E5%BC%80%E5%B9%B3bk.png',
              kaipingAc: 'https://imgg.cookcloud.club/%E5%BC%80%E5%B9%B3AC.png'
            },
            areaRadio: '',
            allAreaBasic: areaSingleList,
            showWorker: false, // 控制员工专属模式显示
            workerId:'', //员工唯一标识符
            workerName:'', // 员工姓名，备用属性？
            startScreen: true, //开屏海报
            customCodeScreen: false, // 员工专属二维码海报弹屏
            customCodeImage: 'cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/周纪峰.jpg',  // 员工专属二维码海报图路径
            canvasImage: '', // Canvas转换生成的海报路径
            showBaocun: false,
            imageFromPath: 'cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/transBills.png',
            canvasLoading: false,
            openId: '',
            isLogin: false, // 是否已登录
            isNewUser: false,
            idZone:{       // 人员ID与组件联动的载体
              '江门':[],
              '鹤山':[],
              '开平':[],
              '新会':[]
            },
            idSingleArea:[], // 当前带ffid的区域员工数组
            curFFID: '',
            tagObj: tagObj, // 标签载体，现用于评分和地区识别等
            showEnterBtn: true ,// 进入评比按钮
            showDepart: false,
            departValue: 'yewu',
            departOption:  [
              { text: '业务管理室', value: 'yewu',title:'qqq' },
              { text: '综合策划室', value: 'cehua' },
              { text: '媒资中心', value: 'media' },
            ],
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        //***********专属扫码带参数模式开始****************************************************************************
        let worker_name = options['worker'] // [名字] 扫码带参数从当前页面进来，直接切换到员工专属模式
        let id_num = options['uuid'] // [员工ID] 员工ID 
        console.log('MyWorkerID', id_num, worker_name)    
        if(id_num && id_num.length > 0 && worker_name ){
            // todo 微信登陆
            console.log('*********专属扫码带参数模式开始 MyWorkerID>0')      
            this.setData({ showEnterBtn: false })
            wx.showToast({
              title: `扫码成功 ${ id_num } ${ worker_name }`, icon:'none'
            })  
            console.log('看看照片', `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${worker_name}.jpg`)
            wx.getImageInfo({
              src: `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${worker_name}.jpg`,              
              success: (picres)=> { 
                db.collection('staffs').where({ name: worker_name }).get().then((res)=>{
                  console.log('有照片!!!!!!二维码模式员工ID查询', res, picres)
                  if(res.data.length>0){
                      let curFF = res.data[0].ffid
                      console.log('CUFFID 照片成功', curFF)
                      this.setData({ showWorker: true, workerId: id_num, workerName: worker_name,  // 设定员工二维码图片
                        customCodeImage: picres.path,
                        curFFID: curFF,
                        areaRadio: res.data[0].workerArea,
                        showEnterBtn: true,
                        imageFromPath: picres.path,
                        curStaff:{ 'group': id_num,
                        'staff': worker_name   }, })
                    setTimeout(()=>{
                      this.setData({ startScreen: false })
                    },5000)
                  }else{
                    wx.showToast({
                      title: '无效的二维码',
                      icon: 'warining'
                    })
                  }
                })
               },
               fail:()=>{  console.log('none pic')
                wx.showToast({ title: '暂无此员工照片' })
                db.collection('staffs').where({ name: worker_name }).get().then((res)=>{
                  console.log('无照片!!!!!!二维码模式员工ID查询', res)
                  if(res.data.length>0){
                    let curFF = res.data[0].ffid
                    console.log('CUFFID 暂无此员工照片', curFF)
                    this.setData({ showWorker: true, workerId: id_num, workerName: worker_name,  // 设定员工二维码图片
                      customCodeImage: 'nn.jpg',
                      curFFID: curFF,
                      areaRadio: res.data[0].workerArea,
                      showEnterBtn: true,
                      curStaff:{ 'group': id_num,
                      'staff': worker_name   }, })
                  //  setTimeout(()=>{
                  //    this.setData({ startScreen: false })
                  //  },5000)
                  }else{ wx.showToast({title: '无效的二维码',  icon: 'loading', duration:6000, mask: true  })
                          this.setData({ showEnterBtn: false } )    }
                })  }
              } )  
        } 
  //***********END专属扫码带参数模式结束****************************************************************************
        // let WorkerId = wx.getStorageSync('workerId') // 从本地存储获取
        // let WorkerName = wx.getStorageSync('workerName')
        // console.log('Page1 Data', WorkerId, options.option, 'isSub', this.data.isSubmit, options.area)
        if(options.area){
          console.log('op area 存在的情况', options['worker'])
          this.setData({ surveyData: options.option , // 上一页提交的问卷数据
            columns:  [
              { values: Object.keys(area[options.area]),
                className: 'column1',   },
              {values: area[options.area] [ Object.keys(area[options.area]) [0] ], // 记得这里得改为动态属性，一个坑
                className: 'column2',
                defaultIndex: 0, } ],
              areaRadio: options.area,
              // startScreen: true,
              curStaff:{ 'group': Object.keys(area[options.area]) [0],
                'staff': area[options.area] [ Object.keys(area[options.area]) [0] ] [0]   },
              customCodeImage: `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${area[options.area] [ Object.keys(area[options.area]) [0] ] [0]}.jpg`,
              workerName: options['worker']?'': area[options.area] [ Object.keys(area[options.area]) [0] ] [0], // 给海报的生成参数 待做：从滑块出发提供员工参数给海报
              workerId:Object.keys(area[options.area]) [0] , // 给海报的生成参数
              imageFromPath: 'cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/transBills.png'
          },()=>{  })
        }else{   // 首页进来，无参数模式，默认江门/江门
          this.setData({ surveyData: options.option , // 上一页提交的问卷数据
            columns:  [
              { values: Object.keys(area['江门']),
                className: 'column1',   },
              {values: area['江门'] [ Object.keys(area['江门']) [0] ], // 记得这里得改为动态属性，一个坑
                className: 'column2',
                defaultIndex: 0, } ],
              areaRadio: '江门',
              // startScreen: true,
              curStaff:{ 'group': Object.keys(area['江门']) [0],
                'staff': area['江门'] [ Object.keys(area['江门']) [0] ] [0]   },
              customCodeImage: `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${area['江门'] [ Object.keys(area['江门']) [0] ] [0]}.jpg`,
              workerName: options['worker'] ? '': area['江门'] [ Object.keys(area['江门']) [0] ] [0], // 给海报的生成参数 待做：从滑块出发提供员工参数给海报
              workerId:Object.keys(area['江门']) [0] , // 给海报的生成参数
              imageFromPath: 'cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/transBills.png'
          },()=>{   this.getDbSeries() })
        }      
      this.LookUserInfo()     // 检查是否新用户,设置状态
      setTimeout(()=>{ 
        if(this.data.showEnterBtn){
          this.setData({ startScreen: false }) 
        }
      },5000)    
      // 科室管理模式判断
      if(options.option=='department'){
        this.setData({
          showDepart: true
        })
      }
      // **************扫码带参数途径end
      // let AreaList = getAreaList() // ！！！注意！人员数据结构变动时，需重新用此方法生成新的JSON供组件使用！！！
      // console.log('））））New area', JSON.stringify(AreaList) )  
      // initDataStaff()   // 插入新员工数据用，日常屏蔽！！！
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {
      setTimeout(()=>{
        const query = wx.createSelectorQuery()
        query.select('.van-overlay').boundingClientRect()
        // console.log('createSelectorQuery', nowDom)
        query.exec(function (res) {
            console.log(res[0])
        })
      },2000)

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
      wx.hideHomeButton()
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function (option) {
      wx.removeStorageSync('workerId')
      wx.removeStorageSync('workerName')
      // wx.clearStorageSync()
    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {
      if (res.from === 'button') {
        // 来自页面内转发按钮
      }
        return {
          title: "江门广电网络优质服务评选",
          path: 'pages/index/index?option=default&area=江门'
        }
    },
    back2Ask(e) {
        wx.navigateBack()        
      },
    // 提交总入口处理方法(评价录入，新用户登录，提交次数更新等)
    async checkSubmit(e){
      if(this.data.isSubmit){
        wx.showToast({
          title: '您已提交 \n 稍后重新进入',
          icon: 'none'
        })
        wx.navigateTo({
          url: `/pages/survey/survey?status=second`, // index
      });
      }
        let isLogin = this.data.isNewUser // 这里待返回openid
        console.log('ISLOGIN', this.data.isNewUser, this.data.jobtype_id)
        console.log(this.data.curStaff) // 开始检查组别是否匹配，匹配才能继续
        let staff = this.data.curStaff.staff // 员工名字
        let group = this.data.curStaff.group  // 员工组别
        if(citys[group]){
            let isInGroup = citys[group].includes(staff)
            if(isInGroup){
                console.log('匹配了', citys[group][0])
            }else{
                console.log('成员与组不匹配', group,citys[group])
                // wx.showToast({
                //     title: '成员与组别不匹配，重新选择',
                //     icon: 'none'
                //   });
            }
        }  
        let ppp = '您还未完成评价 \n'
        if(this.data.workerId.length>1){ // 员工二维码存在的情况下
            if(! (this.data.rateValue) ){        // 二维码模式暂不检验工单号   this.data.jobtype_id   
              wx.showToast({
                  title: ppp,
                  icon: 'none'
                });
          }else{ this.insertRatesDB(isLogin) }
        }else{
          if(! (staff&&group&&this.data.rateValue) ){  // 滑块模式的情况下 // 暂不检验工单号   this.data.jobtype_id 
              wx.showToast({
                  title: ppp,
                  icon: 'none'
                });
          }else{
            this.insertRatesDB(isLogin)   
          }
        }   
    },
    // 判断是否未登录的新用户
    async LookUserInfo(){
      let resp = await wx.cloud.callFunction({
        name: 'quickstartFunctions',    
        data: { type: 'getOpenId'}, 
      })
        this.setData({ openId: resp.result.openid }) 
        let res =  await db.collection('users').where({_openid: resp.result.openid}).get()
        console.log('UserGetCheck检查用户是否登录', res)
        if(res.data == ""){                             // 如果没有用户信息，提交时执行登录，录入user数据
          console.log('用户未登录??--跳转到首页')     
          // if(data==false || this.data.isFirstLogin>0){
            console.log('首次登录，准备获取个人信息')
            this.setData({ isNewUser: true })
        }else{ //已经登陆，更新提交次数        
          return false
        }
        
    },
    insertRatesDB(isLogin){
      let curWorkerId = ''
      if(this.data.workerId.length>1){  // 二维码模式扫入，直接获取员工ID
        curWorkerId = this.data.workerId
      }else{
        for(let item in workerList){  // 普通模式下，从预设的员工数据中，匹配员工ID
          let inside = workerList[item]
          if(inside['name']==this.data.curStaff.staff && inside['area']==this.data.areaRadio){
            console.log('Has id', workerList[item])
            curWorkerId = inside['wid']
          } }
      }
      //排除工单号但重复提交的情况
      // console.log('一旦', this.data.jobtype_id)
      if(!this.data.jobtype_id){
        console.log('无工单号提交的情况')
        this.confirmRatesDb(curWorkerId, isLogin)
      }else{
        // 确认是否存在工单号
        db.collection('rates').where({ work_order: this.data.jobtype_id }).get().then(( dbres )=>{
          console.log('数据库存在订单？', dbres.data)
          if(dbres.data.length>0){   //排除工单号但重复提交的情况
            console.log('已存在该工单,Has work orders')       
            wx.showToast({
              title: '已存在该工单 \r\n /工单已提交',
              icon:'none',
              duration: 5000
            })     
          }else{ 
            console.log('还未存在该工单/工单手机号')
            this.confirmRatesDb(curWorkerId, isLogin) }
      }) 
      }
// wx.cloud.callFunction({
        //   name: 'quickstartFunctions',    
        //   data: { type: 'getOpenId'}, 
        // }).then((resp) => {
        // this.setData({ openId: resp.result.openid }) 
        // db.collection('users').where({
        //     _openid: resp.result.openid
        //   }).get().then( res => {
        //     console.log('UserGetCheck检查用户是否登录', res)
        //     if(res.data == ""){                             // 如果没有用户信息，提交时执行登录，录入user数据
        //       console.log('用户未登录?? 跳转到首页')     
        //       // if(data==false || this.data.isFirstLogin>0){
        //         console.log('首次登录，准备获取个人信息')
        //         wx.getUserProfile({
        //           desc: '用于完善活动资料', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
        //           success: (res) => {
        //             console.log('getUserProfile评价页获取用户信息',res.userInfo)
        //             this.setData({
        //               userInfo: res.userInfo,               
        //             })
        //             db.collection('users').add({
        //             data: {
        //               wechat_name: res.userInfo.nickName,
        //               avatarUrl: res.userInfo.avatarUrl,
        //               curtime: new Date().toLocaleString(),
        //               timestamp: new Date().getTime(),
        //               user_type: 'wechat_user',
        //               have_sub: false,
        //               sub_num: 10,
        //               luckyChance: 3 // 抽奖机会
        //             }  })  // 服务器先新增用户，再更新用户提交信息
        //             this.setData( { isLogin: true }, ()=>{ this.updateSerRates(true, resp.result.openid) } )
        //           },
        //           fail: (res)=>{ 
        //             wx.showToast({
        //               title: '请重新登录',
        //             })
        //             setTimeout(()=>{
        //               // this.updateUserInfo()
        //             }, 1000)                    
        //             console.log('微信获取用户出错|或被拒绝',res)
        //             return }                    
        //         })           
        //     }else{ //已经登陆，更新提交次数
        //       this.updateSerRates(true, resp.result.openid )
        //     }  //   } )   // }).catch((e) => {
        //  console.log('Cloud func bug', e)             
        //  wx.hideLoading();
        //  return false  // });
        // let openId =  this.updateUserInfo() // 这里函数内部进行数据库插入
        // console.log('END Submit with Check User-Login-Info', openId)
        wx.removeStorageSync('workerId')
        wx.removeStorageSync('workerName')     },
    confirmRatesDb(curWorkerId, isLogin){           
        db.collection('rates').add({
          data: {
            surveyData: this.data.surveyData,
            rateGroup: this.data.curStaff.group,  // 员工组别
            rateStaff: this.data.curStaff.staff,  // 员工名字
            workerArea: this.data.areaRadio,  // 员工区域
            wid: curWorkerId, // 员工ID
            rating: this.data.rateValue || '' ,
            user_talk: this.data.user_talk || '',
            curtime: new Date().toLocaleString(),
            timestamp: new Date().getTime(),
            user_type: 'wechat_user',     
            work_order: this.data.jobtype_id,     // 业务工单号       
            department: this.data.departValue // 科室模式、数据
          }
        })
        // 新用户授权
        if(isLogin==true){
          wx.getUserProfile({
            desc: '用于完善活动资料', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
            success: (res) => {
              console.log('getUserProfile评价页获取用户信息',res.userInfo)
              this.setData({
                userInfo: res.userInfo,               
              })
              db.collection('users').add({
              data: {
                wechat_name: res.userInfo.nickName,
                avatarUrl: res.userInfo.avatarUrl,
                curtime: new Date().toLocaleString(),
                timestamp: new Date().getTime(),
                user_type: 'wechat_user',
                have_sub: false,
                sub_num: 10,
                luckyChance: 1 // 抽奖机会
              }  })  // 服务器先新增用户，再更新用户提交信息
              this.setData( { isLogin: true }, ()=>{ this.updateSerRates(true, this.data.openId) } )
            },
            fail: (res)=>{ 
              wx.showToast({
                title: '请重新登录',
              })
              setTimeout(()=>{}, 1000)                    
              console.log('微信获取用户出错|或被拒绝',res)
              return }                    
          })   
        }else{
          this.updateSerRates(true, this.data.openId )  // 已登录的更新提交次数
        }
        return
   
    },
    onPickerChange(event) {
        const { picker, value, index } = event.detail;
        console.log('滑块', value, index, (area[this.data.areaRadio][value[0]]),curPickIndex )         
        picker.setColumnValues(1, (area[this.data.areaRadio][value[0]]) );
        // picker.setColumnValue(1, (area[this.data.areaRadio][value[0]])[0]) // 设置指定列单个值，暂不用
        let newStaff = value[1]
     
        if(index==0){  // 大坑！当第一列变化时，记得更新第二列数据到组件中!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
          console.log('*******CurPickIndex has?',value[0], curPickIndex, (area[this.data.areaRadio][value[0]])[0] )
          newStaff = (area[this.data.areaRadio][value[0]])[0]
        }
        console.log('new STTTTTTTT', newStaff)
        this.setData({
            curStaff: {
                group: value[0],
                staff: newStaff
            },
            workerName: newStaff, // 给海报的生成参数 待做：从滑块出发提供员工参数给海报
            workerId: value[0] , // 给海报的生成参数         
        },()=>{
          console.log('当前滑块选择', this.data.curStaff)    
          setTimeout(()=>{
            this.setData({  customCodeImage: `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${ newStaff }.jpg`,
            imageFromPath: `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${ newStaff }.jpg`
          })      
          },600)
          // let curFFObj = wx.getStorageSync(`${tagObj[this.data.areaRadio]}id`)
          // console.log('滑块触发当前人ID池子',  this.data.idSingleArea  )
          this.data.idSingleArea.forEach((item, index)=>{
              if(item.name==this.data.curStaff.staff){
                this.setData({ curFFID: item.ffid })
              }              
          })
        })
      },
    onRateChange(event){
        this.setData({
            rateValue: (event.detail)*2 ,
          });
        console.log(this.data.rateValue)
    },
    onPhoneChange(e){
        this.data.user_phone = e.detail
    },
    onTalkChange(e){
      this.data.user_talk = e.detail
    },
    onJobTypeChange(e){
      this.data.jobtype_id = e.detail
    },
    updateUserInfo:function(e){        
        wx.showLoading({ title: '',});
      },
      // 服务器更新用户提交信息
      updateSerRates( isLogin, openid){
          // 执行用户提交录入（可提交次数更新等）
          if(isLogin){
            const _ = db.command;
            db.collection('users').where({
                _openid: openid
              }).update({
                  data:{
                      sub_num: _.inc(-1) // 减1次评价机会
                  }
              })
            this.setData({ isSubmit: true})
            if(this.data.showDepart){
              wx.redirectTo({
                url: `/pages/luckyDraw/index`, // index
            });
            }
            wx.redirectTo({
                url: `/pages/survey/survey?status=second`, // index
            });
            wx.showToast({
                title: '前往问卷..',
                icon: 'none'
                });
          }else{
            wx.showToast({
              title: '暂未登录，请重新登录',
              icon: 'none'
              });
          }
          wx.hideLoading();
          return openid
      },
      onDigClose(){
        this.setData({ digShow: false })
      },
      onDigConfirm(event){
        console.log('confirmArea', this.data.areaRadio)
        let curArea = this.data.areaRadio
        citys = area[this.data.areaRadio]
        this.setData({ columns:  [
            {  values: Object.keys(area[this.data.areaRadio]),
              className: 'column1',  },
            { values: area[this.data.areaRadio][ Object.keys(area[this.data.areaRadio])[0] ],
              className: 'column2',
              defaultIndex: 0,  } ],    
            curStaff:{ 'group': Object.keys(area[curArea]) [0],
              'staff': area[curArea] [ Object.keys(area[curArea]) [0] ] [0] },
            customCodeImage: `cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/worker/${area[curArea][Object.keys(area[curArea])[0]][0]}.jpg`,
            workerName: area[curArea] [ Object.keys(area[curArea]) [0] ] [0], // 给海报的生成参数 待做：从滑块出发提供员工参数给海报
            workerId:Object.keys(area[curArea]) [0] , // 给海报的生成参数
            imageFromPath: 'cloud://cloud1-5gc90rkv0c4a396c.636c-cloud1-5gc90rkv0c4a396c-1310135976/transBills.png'       
          }, ()=>{
            this.getDbSeries() // ！！！！！获取人员活动唯一序列号！！！！！！！！！
            // let curFFObj = wx.getStorageSync(`${tagObj[this.data.areaRadio]}id`)
            // // console.log('当前人ID池子',  curFFObj  )
            // curFFObj.forEach((item, index)=>{
            //     // console.log('当前人员', item.name)
            //     if(item.name==this.data.curStaff.staff){
            //       this.setData({ curFFID: item.ffid, idSingleArea: curFFObj })
            //     }              
            // })
          })
      
      },
      onAreaChange( event ){
        console.log('area', event.detail, this.data.digShow)
        this.setData({
          areaRadio: event.detail,
        });
      },
      changeNewArea(){
        this.setData({ digShow: true })
      },
      onStartScreenClose(event, isNextPage){
        // console.log('onStartScreenClose',event, isNextPage)
        this.setData({  customCodeScreen: false })
        // if(isNextPage){
        //   wx.redirectTo({
        //     url: `/pages/luckyDraw/index`,
        // });
        // }
      },
      onStartScreenBtnClose(){
        this.setData({ startScreen: false, customCodeScreen: false })
      },
      onCustomImageClick( isNextPage ){
        this.setData({ customCodeScreen: true })
      },
  // 子组件传过来的-保存海报到本地相册
  onSaveHaibaoLocal( value ){
    console.log('onSaveHaibaoLocal', value)
    this.setData({
      canvasImage: value.detail , // 注意 +detail
      showBaocun: true,
      imageFromPath: value.detail
    },()=>{
      // this.saveImage2Local() //暂时屏蔽
    })
  
  },
  //保存海报到本地相册（暂用）
  saveHaibaoImage: function( event, isNextPage ) {
    console.log('saveHaibaoImage', this.data.canvasImage )
    this.saveImage2Local()
    // let xcanvas = this.selectComponent('#xCanvas')
    // wx.canvasToTempFilePath({
    //   canvas: xcanvas,
    //   success: function (res) {
    //     let tempFilePath = res.tempFilePath;
    //     console.log(tempFilePath)
    //     that.setData({
    //       canvasImage: tempFilePath
    //     },()=>{
    //       this.saveImage2Local()
    //     });
    //   },
    //   fail: function (res) {
    //     console.log(res);
    //   }
    // });
  },
  saveImage2Local(){
    let img_url = this.data.canvasImage;
    console.log('xxxxxxx', img_url)
    // this.setData({ canvasImage: img_url })
    let that = this
//  首先获取图片信息，得到图片的路径；
    wx.getImageInfo({
      src: img_url,
      success(res) {
        console.log('getImageInfo success', res)
//  然后使用saveImageToPhotosAlbum保存图片到本地，到这会询问用户是否打开相册权限；如果他允许即保存成功；
        wx.saveImageToPhotosAlbum({
          filePath: res.path,
          success(e) {  wx.showModal({
              content: '海报已保存到相册，赶紧晒一下吧~',
              showCancel: false,
              confirmText: '好的',
              confirmColor: '#333',
              success: function (res) {
                if (res.confirm) {
                  console.log('用户点击确定');
                  /* 该隐藏的隐藏 */
                  that.setData({
                    customCodeScreen: false,
                  })
                  // if(isNextPage){ wx.redirectTo({ url: `/pages/luckyDraw/index`,    });   }
                } }, fail: function (res) {
                console.log('保存图片失败', res)   }
            })
          },
          fail(e) {
//  如果他不允许，图片保存失败，我们使用getSetting获取用户授权信息，如果用户没有允许writePhotosAlbum权限，
//  使用openSetting打开授权页，让客户手动打开授权，即可成功保存图片；
            wx.getSetting({
              success(res) {
                if (!res.authSetting["scope.writePhotosAlbum"]) {
                  wx.showModal({
                    title: '警告',
                    content: '请打开相册权限，否则无法保存图片到相册',
                    success(res) {
                      if (res.confirm) {
                        wx.openSetting({
                          success(res) { console.log(res)  }
                        })
                      } else if (res.cancel) {
                        wx.showToast({
                          title: '取消授权',
                          icon: "none",
                          duration: 2000
                        })
                      }
                    }
                  })
                }
              }
            })
          }
        })
      }
    })
  },
  filterWorkerName(value){
    console.log('guolv', value)
  },
  onShareBtn(){
    console.log('onShareBtn', this.data.curStaff)
    if(! (this.data.curStaff.staff&&this.data.curStaff.group) ){
      wx.showToast({
          title: '请选择分享人员',
          icon: 'warning'
        });
  }else{
    this.setData({ customCodeScreen: true })
  }
    
  },
  onLongPress(){
    const accountInfo = wx.getAccountInfoSync();
    console.log('小程序',accountInfo.miniProgram) // 小程序 appId
    wx.showToast({
      title: '版本appid' + accountInfo.miniProgram.version + ' - '+ accountInfo.miniProgram.envVersion + '环境',
      icon: 'none'
    });  },
  // 获取序列号从数据库
  getDbSeries(){     
      let areaList = ['江门','鹤山','开平','新会']
      // let hasAreaId = wx.getStorageSync(`${tagObj[this.data.areaRadio]}id`)
      let hasAreaId = IdWorkerObj[`${tagObj[this.data.areaRadio]}`]
      console.log('查询-------------', hasAreaId,'#######')
      if(!hasAreaId){
        db.collection('staffs').aggregate()
        .match({ workerArea: this.data.areaRadio })
        .addFields({ tempTag:1  })
        .group({ _id:'$tempTag', orders:$.push('$$ROOT') //一次性拉取超过100条或者1000条记录
        })
        .end()
        .then(res=>{
          let orders = res.list[0].orders
          console.log('查询到该区域人员', (orders.length) ) 
          this.setData({ idSingleArea: orders  }, ()=>{    // 选定与当前人员匹配的ID（JM XX）
            orders.forEach((item, index)=>{
              // console.log('当前人员', item.name)
              if(item.name==this.data.curStaff.staff){
                this.setData({ curFFID: item.ffid })
              }       })
          })
          wx.setStorageSync(`${tagObj[this.data.areaRadio]}id`, orders)  
        })
      }
      this.setData({ idSingleArea: hasAreaId},()=>{
        // let curFFObj = wx.getStorageSync(`${tagObj[this.data.areaRadio]}id`)
        // console.log('当前人ID池子',  curFFObj  )
        try {
          console.log('当前人员ID池子', this.data.idSingleArea)
          hasAreaId.forEach((item, index)=>{
            // console.log('当前人员', item.name)
            if(item.name==this.data.curStaff.staff){
              this.setData({ curFFID: item.ffid })
            }              
        })
        } catch (error) {
          console.log('人员id池子有异常', error)
          let curFFObj = wx.getStorageSync(`${tagObj[this.data.areaRadio]}id`)
          console.log('第二种方案当前人ID池子',  curFFObj  )
          curFFObj.forEach((item, index)=>{
              // console.log('当前人员', item.name)
              if(item.name==this.data.curStaff.staff){
                this.setData({ curFFID: item.ffid })
              }              
          })
        }
   
      })
    },
    urlSchemeMake(){
      console.log('urlSchemeMake')
      wx.cloud.callFunction({
        name: 'public',    
        data: {  worker:12, uuid:19, action:'getUrlScheme' },  
      }).then((resp) => { 
        console.log('XCLOUD',resp.result)
       }).catch((e) => { console.log('Cloudbug', e)  })  //  wx.hideLoading();
    },
    onSwitch2Change({ detail }) {
      this.setData({ departValue: detail });
    },
})


// "客服中心":{"项目主管":["钟慧芳"],"质培主管":["陈婷婷"],"运营主管":["陆嘉琳"],"投诉主管":["吴芹玉"],"投诉专岗":["陈志君"],"质检专岗":["冯碧君","梁群欢"],"统计专岗":["陈畅"],"班长":["李佩珊","杜伟","关满镰"],"技术支撑岗":["赵健胜","周俊杰","谭建新"],"营销岗":["何凤燕"],"回访岗":["李嘉敏"],"话务员":["彭艳霞","王艳丽","赵雅君","区凤琼","钟晓嫦","吴彩玲","唐韦贞","梁玉琴","余慧敏","吴晓红","林淑庆","陈泳彤","陈董霖","黄玉芬","余焕平","龚敏璋","张明慧","黄翠瑜","李雅玲","吴欣娜","阮慧如","邓文杰","张嘉峻","陈星炜","黄美凤","陈惠明","黄金妹","谭玟靖","伍嘉仪","梁淑娴","何玲芝","关素婷","梁子霞"]} 